package com.heima.comment.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.heima.model.comment.pojos.CommentLikeDto;
import com.heima.model.comment.pojos.CommentLoadDto;
import com.heima.model.comment.pojos.CommentSaveDto;
import com.heima.model.common.dtos.ResponseResult;
import com.heima.model.wemedia.dtos.AuthorLikeDto;
import com.heima.model.wemedia.dtos.CommentListDto;
import com.heima.model.wemedia.dtos.WmRepayCommentDto;

public interface CommentService {

    /**
     * 保存评论
     * @param dto
     * @return
     */
    public ResponseResult saveComment(CommentSaveDto dto);

    /**
     * 加载评论列表
     * @param dto
     * @return
     */
    ResponseResult loadComment(CommentLoadDto dto);

    /**
     * 点赞评论
     * @param dto
     * @return
     */
    ResponseResult like(CommentLikeDto dto);

    /**
     * 加载评论回复
     * @param dto
     * @return
     */
    ResponseResult loadRepay(CommentLoadDto dto);

    /**
     * 删除文章对应的评论
     * @param articleId
     */
    void delComment(Long articleId);

    /**
     * 查看评论详情
     * @param dto
     * @return
     */
    ResponseResult list(CommentListDto dto);

    /**
     * 作者点赞评论
     * @param dto
     * @return
     */
    ResponseResult authorLike( AuthorLikeDto dto);

    /**
     * 作者回复评论
     * @param dto
     */
    ResponseResult repay(WmRepayCommentDto dto);
}
